package com.web.orderservice.controller;

import com.web.orderservice.entity.Order;
import com.web.orderservice.entity.Product;
import com.web.orderservice.service.OrderService;
import jakarta.annotation.Resource;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

/**
 * 商品控制器
 */
@RestController
public class OrderController {

    @Resource
    private OrderService orderService;

    @Resource
    private RestTemplate restTemplate;

    @RequestMapping("/order/{id}")
    public ResponseEntity<Order> findProductById(@PathVariable Integer id) {

        Order order = orderService.getById(id);

        // 使用服务名 + 注册中心调用服务
        ResponseEntity<Product> entity = restTemplate.getForEntity(
                "http://product-service/product/" + order.getProductId(),Product.class);

        // 设置订单的商品对象
        order.setProduct(entity.getBody());
        return ResponseEntity.ok(order);
    }
}
